package com.booktrading.service;

import com.booktrading.model.CategoryOrderStat;
import com.booktrading.model.Order;
import java.util.List;

public interface OrderService {
    // 创建订单
    Order createOrder(Order order);
    
    // 获取订单详情
    Order getOrderById(Long id);
    
    // 获取买家的订单列表
    List<Order> getBuyerOrders(Long buyerId);
    
    // 获取卖家的订单列表
    List<Order> getSellerOrders(Long sellerId);
    
    // 更新订单状态
    boolean updateOrderStatus(Long id, Integer status);
    
    // 更新订单信息
    boolean updateOrder(Order order);
    
    // 根据订单号获取订单
    Order getOrderByOrderNo(String orderNo);
    
    // 获取所有订单
    List<Order> getAllOrders();
    
    // 统计订单总数
    int countAll();
    
    // 统计订单总金额
    Double sumAllAmount();
    
    // 按分类统计订单
    List<CategoryOrderStat> countByCategory();
} 